<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ShowFrameNumber / ShowSMPTE / ShowTime フィルタ</title>
<link rel="stylesheet" type="text/css" href="../../avisynth.css">
<link rel="stylesheet" type="text/css" href="../ja.css">
</head>
<body >
<h2>ShowFrameNumber</h2>
<p><code>ShowFrameNumber </code>(<var>clip,
  bool   &quot;scroll&quot;,
  int    &quot;offset&quot;,
  int    &quot;x&quot;,
  int    &quot;y&quot;,
  string &quot;font&quot;,
  float  &quot;size&quot;,
  int    &quot;text_color&quot;,
  int    &quot;halo_color&quot;,
  float  &quot;font_width&quot;,
  float  &quot;font_angle&quot;</var>)</p>

<p><code>ShowFrameNumber</code> は、AviSynth が考えるフレーム番号を示すテキストをすべてのフレーム上に描画します。これは、スクリプトを書くときに役立つことがあります。<code>ShowFrameNumber</code> によって生成されるクリップに追加のフィルタを適用すると、それらのフィルタは画像を扱うようにフレーム上のテキストを扱います。そのため、あなたが目にするときには、番号が歪められているかもしれません。</p>

<p><var>scroll</var> （デフォルト: false）が true に設定されると、フレーム番号はビデオ上に一回のみ描画され、上から下へスクロールします。でなければ、ビデオの右側に収まる分だけ描画されます。フレーム番号は、トップフィールドファーストの素材に関してはクリップの左側に描画されますが、ボトムフィールドファーストの素材については右側に、フィールドベースの素材では（そのフィールドがトップであるかボトムであるかによって）クリップの左側と右側に交互に描画されます。</p>

<p>v2.56 から、その他のオプション（<var>offset</var>、<var>x</var>、<var>y</var>、<var>font</var>、<var>size</var>、<var>text_color</var>、<var>halo_color</var>、<var>font_width</var>、<var>font_angle</var>）が追加されています。'''offset''' は、ユーザーが表示されるフレーム番号にオフセットを追加することを可能にします。それ以外のオプションの説明については、<a href="subtitle.htm">Subtitle</a> を参照してください。</p>

<h2>ShowSMPTE</h2>
<p><code>ShowSMPTE </code>(<var>clip,
  float  &quot;fps&quot;,
  string &quot;offset&quot;,
  int    &quot;offset_f&quot;,
  int    &quot;x&quot;,
  int    &quot;y&quot;,
  string &quot;font&quot;,
  float  &quot;size&quot;,
  int    &quot;text_color&quot;,
  int    &quot;halo_color&quot;,
  float  &quot;font_width&quot;,
  float  &quot;font_angle&quot;</var>)</p>

<p><code>ShowSMPTE</code> は <code>ShowFrameNumber</code> と似ていますが、SMPTE タイムコード<a href="#footnote_1" class="footnote_link">*1</a>（時間:分:秒:フレーム）を表示します。v2.53 から、カレントの fps が利用できない場合をのぞき、引数 <var>fps</var> は必須ではなくなりました。それ以外の場合<a href="#footnote_2" class="footnote_link">*2</a>は引数 <var>fps</var> が必要で、その値は 23.976、24、25、29.97、30 のいずれかでなければなりません。</p>

<p>v2.56 から、その他のオプション（<var>offset</var>、<var>offset_f</var>、<var>x</var>、<var>y</var>、<var>font</var>、<var>size</var>、<var>text_color</var>、<var>halo_color</var>、<var>font_width</var>、<var>font_angle</var>）が内蔵されています。<var>offset</var> は、ユーザーがタイムコードにオフセットを追加することを可能にします。一方、<var>offset_f</var> は、ユーザーがフレーム番号を指定することによってタイムコードにオフセットを追加することを可能にします（<var>offset</var> は <var>offset_f</var> に優先します）。それ以外のオプションの説明については、<a href="subtitle.htm">Subtitle</a> を参照してください。</p>

<p><b>ドロップフレーム VS ノンドロップフレーム タイムコード</b></p>
<p>クリップのフレームレートが 29.969 と 29.971 の間なら、<a href="http://teched.vt.edu/gcc/HTML/VirtualTextbook/PDFs/AdobeTutorialsPDFs/Premiere/PremiereTimecode.pdf">ドロップフレームタイムコード</a><a href="#footnote_3" class="footnote_link">*3</a>が有効化されます。元々、テレビ信号が白黒だった頃、NTSC は 60 Hz （30fps）で動作していました。色が追加された際に、技術的な理由により 59.94 Hz （29.97 fps）に変更されました。1000 フレームの走査に対し、1001 とカウントされます（実際にフレームをドロップするのではなく、単にフレーム番号の問題です）。10 分ごとを除き、毎分最初の 2 フレームがドロップされます。すなわち、00:00:00:00, 00:00:00:01, 00:00:00:02, ..., 00:00:59:29, 00:01:00:02, 00:01:00:03, ..., 00:01:59:29, 00:02:00:02, 00:02:00:03, ..., 00:08:59:29, 00:09:00:02, 00:09:00:03, ..., 00:09:59:29, 00:10:00:00, 00:10:00:01, ... などといった具合になります。ドロップされたフレームをカウントすることは、ドロップフレームにおける 00:10:00:00 が実時間の 00:10:00:00 と一致することを意味します。</p>

<p><b>使用例</b></p>
<pre>ShowSMPTE(offset=&quot;00:00:59:29&quot;, x=360, y=576, font=&quot;georgia&quot;,
\        size=24, text_color=$ff0000)</pre>
<pre>
Mpeg2Source(&quot;clip.d2v&quot;) # 常にトップフィールドファースト
# 9 フレームのオフセットを使って、クリップの左側に上から下へ
# スクロールするフレーム番号を描画する
ShowFrameNumber(scroll=true, offset=9, text_color=$ff0000)</pre>

<h2>ShowTime</h2>
<p><code>ShowTime </code>(<var>clip,
  int    &quot;offset_f&quot;,
  int    &quot;x&quot;,
  int    &quot;y&quot;,
  string &quot;font&quot;,
  float  &quot;size&quot;,
  int    &quot;text_color&quot;,
  int    &quot;halo_color&quot;,
  float  &quot;font_width&quot;,
  float  &quot;font_angle&quot;</var>)</p>

<p><code>ShowTime</code> は <code>ShowSMPTE</code> に似ていますが、経過時間（時:分:秒.ミリ秒）を表示します。オプションの説明については ShowSMPTE を参照してください。</p>

<p>注: これらのフィルタは、テキスト描画のため、かなり重いです。</p>

<p><b>更新履歴</b></p>
<table border="1">
  <tbody>
    <tr>
      <td>v2.58</td>
      <td>ShowTime 関数を追加。<br>
	      font_width パラメータと font_angle パラメータを追加。</td>
    </tr>
    <tr>
      <td>v2.56</td>
      <td>offset とその他のオプションを追加。</td>
    </tr>
  </tbody>
</table>
<p><kbd>原文 Date: 2007/09/12 08:02:39</kbd><br />
<kbd>日本語訳 $Date: 2008/06/22 07:41:20 $</kbd></p>
<FORM>
<INPUT TYPE="Button" VALUE="戻る"
onClick="history.go(-1)">
</form>

<hr />
<div id="footnote">
<ul>
  <li>訳者註:
    <ul>
      <li><a name="footnote_1" class="footnote_link">*1</a> <span class="footnote_text"><a href="overlay.htm">参考: <a href="http://www.jiten.com/dicmi/docs/s/10812.htm">SMPTEタイム・コード - マルチメディア／インターネット事典</a></span></li>
      <li><a name="footnote_2" class="footnote_link">*2</a> <span class="footnote_text">カレントの fps が利用できない場合。</span></li>
      <li><a name="footnote_3" class="footnote_link">*3</a> <span class="footnote_text">PDF です。</span></li>
    </ul>
  </li>
</ul>
</div>

</body>
</html>
